package com.yuju.account.dao.entity;

import com.yuju.persist.base.entity.BaseEntity;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

public class Account extends BaseEntity implements Serializable {
    /**
     *  主键。存储UUID，由应用生成。,所属表字段为acc_order_account.id
     */
    private String id;

    /**
     *  所属酒店。外键，引用酒店信息表（grp_hotel）的主键（id）。,所属表字段为acc_order_account.hotel_id
     */
    private String hotelId;

    /**
     *  ,所属表字段为acc_order_account.reserve_id
     */
    private String reserveId;

    /**
     *  房间订单ID。外键，引用房间订单表（ord_room_order）的主键（id）。,所属表字段为acc_order_account.room_order_id
     */
    private String roomOrderId;

    /**
     *  账务类型。1收入SR（夜审房费等应收）、2结算JS（实际收款）。,所属表字段为acc_order_account.account_type
     */
    private Byte accountType;
    
    /**
     *  流水号,所属表字段为acc_order_account.account_code
     */
    private String accountCode;

    /**
     *  营业项目。,所属表字段为acc_order_account.business_type
     */
    private Byte businessType;

    /**
     *  营业项目名称。,所属表字段为acc_order_account.business_type_name
     */
    private String businessTypeName;

    /**
     *  营业项目分类。指具体营业项目下的具体分类。,所属表字段为acc_order_account.business_type_detail
     */
    private Byte businessTypeDetail;

    /**
     *  营业项目类型名称。,所属表字段为acc_order_account.business_type_detail_name
     */
    private String businessTypeDetailName;

    /**
     *  营业详情。,所属表字段为acc_order_account.business_detail
     */
    private String businessDetail;

    /**
     *  金额。,所属表字段为acc_order_account.money
     */
    private BigDecimal money;

    /**
     *  数量。,所属表字段为acc_order_account.amount
     */
    private Integer amount;

    /**
     *  票据号。,所属表字段为acc_order_account.voucher_no
     */
    private String voucherNo;

    /**
     *  住客ID。外键，引用客人档案（grp_guest_info）的主键（id）。,所属表字段为acc_order_account.room_guest_id
     */
    private String roomGuestId;

    /**
     *  账务状态。,所属表字段为acc_order_account.account_status
     */
    private Byte accountStatus;

    /**
     *  账务状态名称。,所属表字段为acc_order_account.account_status_name
     */
    private String accountStatusName;

    /**
     *  外键，引用班次表（hot_class）的主键（id）。,所属表字段为acc_order_account.class_id
     */
    private String classId;

    /**
     *  创建用户ID。外键，引用员工表（grp_employee）的主键（id）。,所属表字段为acc_order_account.create_user_id
     */
    private String createUserId;

    /**
     *  更新用户ID。外键，引用员工表（grp_employee）的主键（id）。,所属表字段为acc_order_account.update_user_id
     */
    private String updateUserId;

    /**
     *  备注。,所属表字段为acc_order_account.remark
     */
    private String remark;

    /**
     *  是否逻辑删除。1表示已逻辑删除，2表示未逻辑删除，默认为2。,所属表字段为acc_order_account.is_deleted
     */
    private Byte isDeleted;

    /**
     *  创建时间。,所属表字段为acc_order_account.gmt_create
     */
    private Date gmtCreate;

    /**
     *  修改时间。,所属表字段为acc_order_account.gmt_modified
     */
    private Date gmtModified;

    /**
     *  所属集团。外键，引用集团信息表（grp_group）的主键（id）。,所属表字段为acc_order_account.group_id
     */
    private String groupId;
    
    /**  
     * createUserName : 账务的创建者
     */
    private String createUserName;
    
    /**  
     * roomNo : 房间号
     */
    private String roomNo;
    
    /**  
     * guestName : 客人姓名
     */
    private String guestName;
    /**  
     * shiftCode : 班次编号
     */
    private String shiftCode;
    
    private String orderNo;
    
    private String updateUserName;

    private static final long serialVersionUID = 1L;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getHotelId() {
        return hotelId;
    }

    public void setHotelId(String hotelId) {
        this.hotelId = hotelId;
    }

    public String getReserveId() {
        return reserveId;
    }

    public void setReserveId(String reserveId) {
        this.reserveId = reserveId;
    }

    public String getRoomOrderId() {
        return roomOrderId;
    }

    public void setRoomOrderId(String roomOrderId) {
        this.roomOrderId = roomOrderId;
    }

    public Byte getAccountType() {
        return accountType;
    }

    public void setAccountType(Byte accountType) {
        this.accountType = accountType;
    }

    public Byte getBusinessType() {
        return businessType;
    }

    public void setBusinessType(Byte businessType) {
        this.businessType = businessType;
    }

    public String getBusinessTypeName() {
        return businessTypeName;
    }

    public void setBusinessTypeName(String businessTypeName) {
        this.businessTypeName = businessTypeName;
    }

    public Byte getBusinessTypeDetail() {
        return businessTypeDetail;
    }

    public void setBusinessTypeDetail(Byte businessTypeDetail) {
        this.businessTypeDetail = businessTypeDetail;
    }

    public String getBusinessTypeDetailName() {
        return businessTypeDetailName;
    }

    public void setBusinessTypeDetailName(String businessTypeDetailName) {
        this.businessTypeDetailName = businessTypeDetailName;
    }

    public String getBusinessDetail() {
        return businessDetail;
    }

    public void setBusinessDetail(String businessDetail) {
        this.businessDetail = businessDetail;
    }

    public BigDecimal getMoney() {
        return money;
    }

    public void setMoney(BigDecimal money) {
        this.money = money;
    }

    public Integer getAmount() {
        return amount;
    }

    public void setAmount(Integer amount) {
        this.amount = amount;
    }

    public String getVoucherNo() {
        return voucherNo;
    }

    public void setVoucherNo(String voucherNo) {
        this.voucherNo = voucherNo;
    }

    public String getRoomGuestId() {
        return roomGuestId;
    }

    public void setRoomGuestId(String roomGuestId) {
        this.roomGuestId = roomGuestId;
    }

    public Byte getAccountStatus() {
        return accountStatus;
    }

    public void setAccountStatus(Byte accountStatus) {
        this.accountStatus = accountStatus;
    }

    public String getAccountStatusName() {
        return accountStatusName;
    }

    public void setAccountStatusName(String accountStatusName) {
        this.accountStatusName = accountStatusName;
    }

    public String getClassId() {
        return classId;
    }

    public void setClassId(String classId) {
        this.classId = classId;
    }

    public String getCreateUserId() {
        return createUserId;
    }

    public void setCreateUserId(String createUserId) {
        this.createUserId = createUserId;
    }

    public String getUpdateUserId() {
        return updateUserId;
    }

    public void setUpdateUserId(String updateUserId) {
        this.updateUserId = updateUserId;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Byte getIsDeleted() {
        return isDeleted;
    }

    public void setIsDeleted(Byte isDeleted) {
        this.isDeleted = isDeleted;
    }

    public Date getGmtCreate() {
        return gmtCreate;
    }

    public void setGmtCreate(Date gmtCreate) {
        this.gmtCreate = gmtCreate;
    }

    public Date getGmtModified() {
        return gmtModified;
    }

    public void setGmtModified(Date gmtModified) {
        this.gmtModified = gmtModified;
    }

    public String getGroupId() {
        return groupId;
    }

    public void setGroupId(String groupId) {
        this.groupId = groupId;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", hotelId=").append(hotelId);
        sb.append(", reserveId=").append(reserveId);
        sb.append(", roomOrderId=").append(roomOrderId);
        sb.append(", accountType=").append(accountType);
        sb.append(", businessType=").append(businessType);
        sb.append(", businessTypeName=").append(businessTypeName);
        sb.append(", businessTypeDetail=").append(businessTypeDetail);
        sb.append(", businessTypeDetailName=").append(businessTypeDetailName);
        sb.append(", businessDetail=").append(businessDetail);
        sb.append(", money=").append(money);
        sb.append(", amount=").append(amount);
        sb.append(", voucherNo=").append(voucherNo);
        sb.append(", roomGuestId=").append(roomGuestId);
        sb.append(", accountStatus=").append(accountStatus);
        sb.append(", accountStatusName=").append(accountStatusName);
        sb.append(", classId=").append(classId);
        sb.append(", createUserId=").append(createUserId);
        sb.append(", updateUserId=").append(updateUserId);
        sb.append(", remark=").append(remark);
        sb.append(", isDeleted=").append(isDeleted);
        sb.append(", gmtCreate=").append(gmtCreate);
        sb.append(", gmtModified=").append(gmtModified);
        sb.append(", groupId=").append(groupId);
        sb.append("]");
        return sb.toString();
    }

	public String getCreateUserName() {
		return createUserName;
	}

	public void setCreateUserName(String createUserName) {
		this.createUserName = createUserName;
	}

	public String getRoomNo() {
		return roomNo;
	}

	public void setRoomNo(String roomNo) {
		this.roomNo = roomNo;
	}

	public String getGuestName() {
		return guestName;
	}

	public void setGuestName(String guestName) {
		this.guestName = guestName;
	}

	public String getAccountCode() {
		return accountCode;
	}

	public void setAccountCode(String accountCode) {
		this.accountCode = accountCode;
	}

	public String getShiftCode() {
		return shiftCode;
	}

	public void setShiftCode(String shiftCode) {
		this.shiftCode = shiftCode;
	}

	public String getOrderNo() {
		return orderNo;
	}

	public void setOrderNo(String orderNo) {
		this.orderNo = orderNo;
	}

	public String getUpdateUserName() {
		return updateUserName;
	}

	public void setUpdateUserName(String updateUserName) {
		this.updateUserName = updateUserName;
	}
}